package com.study.spark.scala.chapter08

object Scala04_Match {
  def main(args: Array[String]): Unit = {
    // TODO　模糊查询 - 匹配规则

    val  (id,name,age)=(1,"zhangsan",20)
    println(name)//zhangsan

    val map =Map(
      ("a",1),("b",2),("c",3)
    )

    // 这种模式匹配带有过滤的效果
    for ((k,2) <-map){
      println(k)
    }
    //b

    val list =List(
      (("河北","鞋"),10),
      (("河北","衣服"),20),
      (("河北","电脑"),15)
    )
    // 下面的代码使用模式匹配需要注意：
    // 1.匹配数据时，需要加case关键字
    // 2.case可能存在多个分支，所以需要将map的小括号换成大括号
    val list1 = list.map {
      case ((prv,item),cnt) => {
        (prv,(item,cnt*2))
      }
    }
    println(list1)//List((河北,(鞋,20)), (河北,(衣服,40)), (河北,(电脑,30)))
  }
}
